\version "2.24.3"

#(set-default-paper-size '(cons (* 210 mm) (* 5000 mm)))

\header {
  tagline = #f
}

gtrOneVoiceOne = \relative {
  \time 4/4
  \key a \major
  \tempo 4 = 192
  \stemNeutral
  fis8-+ e-+ a\glissando b cis e'4 <b cis>8~ |
  <b cis>8 <a cis>4. a,8(\glissando b\glissando a) fis-+ |
  b8\glissando cis \stemUp e4~ e8 e e4\open |
  \parenthesize a8 \parenthesize a4.~ \parenthesize a8\open d,4.~ | % 4
  d8 d4.~ d8 d \stemNeutral r d~ |
  d4 d,4 d8 d\open fis\open d'(\glissando |
  s8 a') a4 a8\open e\open cis\open a~ |
  a4 <a e'>8-+ a-+ a-+ <a e' cis'> r q~ | % 8
  q4 q8 a-+ a-+ q r <fis a>~ |
  q4 q8 fis-+ fis-+ <fis d'> fis <fis cis'>~ |
  q4 q8 fis-+ fis-+ <fis cis' fis> r4 |
  a,16( a b8) d16( e fis8~ fis) \stemUp a'4.~ | % 12
  a4 b,16( cis8.) cis8\glissando a'4 \stemNeutral <cis, fis>8 |
  r8 <cis b'> r <cis a'> r <cis gis'> r <cis fis cis'>~ |
  q4 q4-. r8 fis(\glissando e\glissando fis~ |
  fis4) fis-. r8 fis r4 | % 16
  \bar "||"
}

gtrOneVoiceTwo = \relative {
  \time 4/4
  \key a \major
  \tempo 4 = 192
  s1*2 |
  s4. a8~ a4. a8~ |
  a4 \parenthesize a8\open \parenthesize e\open b'4 b |
  b4 b~ b8 s4. |
  s8 b s4 s2 |
  s1*5 |
  s2. gis'16( a gis8~ |
  gis4) a, a4. s8 |
  s1*3 |
  \bar "||"
}

gtrTwoVoiceOne = \relative {
  \time 4/4
  \key a \major
  \tempo 4 = 192
  \stemNeutral
  <\parenthesize fis' \parenthesize cis'>4.\open b8~ b fis r fis~ |
  fis8 fis\glissando a e'~ e a, a4-. |
  fis4 \afterGrace a4\glissando { \hideNotes e16 \unHideNotes } gis,8 b4-. a8~ |
  a4 r8 b'~ b cis4-. a8~ | % 4
  a4 a r8 a4-. a8~ |
  a4 a r8 a4. |
  b,8\open e\open a,\open b\open a fis4 e8~ |
  e4 \stemUp e'4~ e8 \stemNeutral fis4 a8~ | % 8
  a4 fis8\glissando cis~ cis cis4-. fis8~ |
  fis4 \stemUp e4-. r8 e\glissando fis fis~ |
  fis4 e4-. r8 e r4 |
  b'8\open e4\open a,8~ a2~ | % 12
  a4\open \stemNeutral e'8\open a,8~ a fis4\open a8~ |
  a4\open fis8\glissando cis8~ cis cis4-. \stemUp fis8~ |
  fis4 e-. r8 e\glissando fis fis~ |
  fis4 e-. r8 e r4 | % 16
  \bar "||"
}

gtrTwoVoiceTwo = \relative {
  \time 4/4
  \key a \major
  \tempo 4 = 192
  s1*7 |
  s4. a8~ a s4. |
  s1 |
  s4 fis-. r8 fis4 fis8~ |
  fis4 fis-. r8 fis8 r4 |
  b2 a8 fis r e~ |
  e4 s2. |
  s2.. fis8~ |
  fis4 fis-. r8 fis4 fis8~ |
  fis4 fis-. r8 fis r4 |
  \bar "||"
}

bass = \relative {
  \time 4/4
  \key a \major
  \tempo 4 = 192
  d,8\glissando e e'\glissando cis8~ cis b4 e,8 |
  r8 cis' r e, r a\glissando b e, |
  \repeat unfold 3 { a4 a r8 a r a~ | }
  a4 a r8 a4-. r8 |
  \repeat unfold 2 {
    e'8 b a fis r e r a~ |
    a4 a r8 a r a~ |
    a4 a r8 a4\glissando d,8~ |
    d4 d-. r8 d r d~ |
    d4 d-. r8 d r4 |
  }
}

kitOne = \drummode {
  \time 4/4
  \tempo 4 = 192
  \repeat unfold 2 {
    cymc4 <sn hho> hho <sn hho> |
    hho4 <sn hho> hho <sn hho> |
  }
  hho4 <sn hho> hho <sn hho> |
  hho4 <sn hho> \repeat unfold 2 { sn16 hho \parenthesize sn \parenthesize sn } |
  cymc4 <sn hho> hho <sn hho> |
  hho4 <sn hho> hho <sn hho> |
  hho4 <sn hho> hho <sn hho>8. \parenthesize sn16 |
  cymc4 <sn hho> hho <sn hho> |
  hho4 <sn hho> hho4 \acciaccatura sn8 sn4 |
  cymc4 <sn hho> hho <sn hho> |
  hho4 <sn hho> hho <sn hho> |
  hho4 <sn hho> hho <sn hho>8 \parenthesize sn16 \parenthesize sn16 |
  cymc4 <sn hho>8 \parenthesize sn16 \parenthesize sn16 hho4 <sn hho> |
  hho4 <sn hho> \repeat unfold 2 { sn16 hho \parenthesize sn \parenthesize sn } |
  \bar "||"
}

kitTwo = \drummode {
  \time 4/4
  \tempo 4 = 192
  bd2 bd8 8 r4 |
  r8 bd r bd r bd r4 |
  bd2 bd |
  r8 bd r4 r2 |
  r8 bd r4 r8 bd r bd |
  r8 bd r bd r2 |
  bd2 bd8 8 r4 |
  r8 bd r4 r8 bd r bd |
  r8 bd r4 r8 bd r4 |
  bd2 bd8 8 r bd |
  r8 bd r bd r bd hhp4 |
  bd2 bd8 8 r4 |
  r8 bd r4 r8 bd r bd |
  r8 bd r bd r bd r4 |
  bd2 bd4. bd8 |
  r8 bd r bd r2 |
  \bar "||"
}

fullScore = <<
  \new Staff \with {
    midiInstrument = "overdriven guitar"
    midiPanPosition = #-1.0
  } <<
    \clef "treble_8"
    \new Voice = "g1v1" { \voiceOne \gtrOneVoiceOne }
    \new Voice = "g1v2" { \voiceTwo \gtrOneVoiceTwo }
  >>

  \new Staff \with {
    midiInstrument = "distorted guitar"
    midiPanPosition = #1.0
  } <<
    \clef "treble_8"
    \new Voice = "g2v1" { \voiceOne \gtrTwoVoiceOne }
    \new Voice = "g2v2" { \voiceTwo \gtrTwoVoiceTwo }
  >>

  \new Staff \with {
    midiInstrument = "electric bass (pick)"
    midiPanPosition = #0.0
  } {
    \clef "bass_8"
    \bass
  }

  \new DrumStaff \with { drumStyleTable = #weinberg-drums-style } <<
    \new DrumVoice { \voiceOne \kitOne }
    \new DrumVoice { \voiceTwo \kitTwo }
  >>
>>

\score {
  \fullScore

  \layout {
    indent = 0

    \context {
      \Score
      \override Glissando.minimum-length = #4
      \override Glissando.springs-and-rods = #ly:spanner::set-spacing-rods
      \override Glissando.thickness = #2
    }

    \context {
      \StaffGroup
      \RemoveAllEmptyStaves
    }
  }
}

\score {
  \fullScore

  \midi { }
}
